package java_thinking.unit_20._20_1;

/**
 * @Desc: 20.2.3 Bean定义的例子，在其中应用了以上这些注释
 *      1.快捷方式：如果程序员的主时钟定义了名为value的元素，并且在引用该注解的时候，如果该元素是唯一需要赋值的一个元素，
 *        那么此时无需使用 key-value 这种语法，而只需要在括号内给出value元素所需的值即可，这适用于任何类型的元素
 * @author: cww
 * @DateTime: 2019-05-26 21:26
 */

/**
 * DBTable name 将会用来作为表的名字
 */
@DBTable(name = "MEMBER")
public class Member {
    //处理器将在创建表的时候使用该值设置sql列的大小
    @SQLString(30) String firstName;
    @SQLString(50) String lastName;
    @SQLInteger Integer age;
    //这里value已经不是唯一需要赋值的元素了，所以不能再使用快捷方式为其赋值了
    @SQLString(value = 30,constraints = @Constraints(primaryKey = true)) String handle;
    static int memberCount;

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getHandle() {
        return handle;
    }

    public void setHandle(String handle) {
        this.handle = handle;
    }

    public static int getMemberCount() {
        return memberCount;
    }

    public static void setMemberCount(int memberCount) {
        Member.memberCount = memberCount;
    }
}
